#pragma once
/*
	DistanceDec.h
	Christopher Raffaele
	04.28.2008

	Distance's class declarations
*/
#include<iostream>
#include<cstring>

class DistanceConverter{
private:
	void showMainMenu(); //displays the convert from menu

	double **conversionTable; //2d array holding the values to perform conversions
	std::string *units; //array holding the unit label

	void createConversionTable();

	void setFeetRow(); //set the values in the table for conversions involving feet
	void setInchesRow(); //set the values in the table for conversions involving inches
	void setMilesRow(); //set the values in the table for conversions involving miles
	void setMillimetersRow(); //set the values in the table for conversions involving millimeters
	void setMetersRow(); //set the values in the table for conversions involving meters
	void setCentimetersRow(); //set the values in the table for conversions involving centimeters

	void createUnitsString(); //sets the labels in the array

	unsigned int getConvertFromToChoice(bool from); 
	double getConvertDistance();

	void run(); //performs a distance conversion

public:
	DistanceConverter();
	~DistanceConverter();

	bool userWantsToRunAgain(); //checks if the user wants to continue distance conversions
	void start(); //continues running distance conversion until the user wants to stop
};